// 导航守卫
import router from '@/router'
import store from '@/store'
import { Message } from 'element-ui'

// 创建网页白名单，不需要登录就可以进的页面
const pageList = ['/login', '/404']
// 后置导航守卫
router.beforeEach(async (to, from, next) => {
  if (store.state.login.token) {
    if (to.path.toLowerCase() === '/login') {
      // 如果登录成功，还要进入登录页
      // 则跳转到首页
      next('/')
    } else {
      // 否则正常进入
      if (!store.state.login.userInfo.id) {
        await store.dispatch('login/getUserInfo')
      }
      next()
    }
  } else {
    if (pageList.includes(to.path.toLowerCase())) {
      // 网页白名单，不需要登录页正常进入
      next()
    } else {
      // 需要登录，则进入登录页
      Message('请先登录')
      next('/login')
    }
  }
})
